Generally, an internal combustion engine for a vehicle, which is referred to as an engine hereinafter, is provided with a cam sensor which detects a reference position of a camshaft, and a crank sensor which outputs pulse signals indicative of a rotational position of the crankshaft. A cylinder identification is conducted based on the pulse signals, and a crank angle is detected based on the number of the pulse signals. Alternatively, a crank rotor of the crank sensor has a teeth-lacked portion, which corresponds to several pulse signals in a predetermined crank angel. According to a detection of the teeth-lacked portion based on an interval of the pulse signals, the reference position of the crankshaft is detected so that the cylinder identification is conducted. In the above structures, when the engine is turned on, a cylinder into which a fuel is initially injected is unidentified until a starter conducts cranking of the engine. Before the cylinder identification, fuel injection cannot be conducted, whereby a staring time of the engine is delayed.
In order to solve the above problems, as shown in JP-60-240875A and JP-10-18895A, the stop position of the engine is memorized in a memory. At a next starting of the engine, the initial cylinder, into which the fuel is initially injected, is identified based on the memorized stop position of the engine.
The engine, however, runs for a while by the inertia thereof after an ignition switch is turned off to terminate ignitions and fuel injections. Just before the engine stops completely, a piston in a compression stroke may hardly pass over the top dead center (TDC) by a compression pressure in the cylinder, which causes a reverse stroke of the piston, so that the precise detection of the stop position of the engine is hardly obtained. The reverse stroke of the piston cannot be detected. Thus, even if the stop position of the engine is memorized, the initial cylinder into which the fuel is injected at the time of the engine starting may be misidentified due to the incorrectness of the memorized data, whereby a startability and an emission of the engine are deteriorated.